Aspect Refinement

نویسندگان

  • Sven Apel
  • Christian Kästner
  • Thomas Leich
  • Gunter Saake
چکیده

Stepwise refinement (SWR) is fundamental to software engineering. As aspect-oriented programming (AOP) gains momentum in software development, aspects should be subject to SWR as well. In this paper, we introduce the notion of aspect refinement that unifies AOP and SWR. To reflect this unification to programming language level, we present an implementation technique for refining aspects based on mixin composition. Specifically, we propose a set of concrete mechanisms for refining all kinds of structural elements of aspects in a uniform way (methods, pointcuts, advice). To underpin our proposal, we contribute a formal syntax and semantics specification as well as a fully functional compiler on top of AspectJ. We apply our approach to a non-trivial case study and derive several programming guidelines.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Aspect Refinement and Bounded Quantification in Incremental Designs

This article investigates aspects in the context of the incremental software development, i.e. software product lines. Specifically, we propose the integration of aspects into AHEAD, an architectural model for feature-based product line development. We introduce the notion of aspect refinement based on Aspectual Mixin Layers, a novel technique for implementing features. Aspect refinement enable...

متن کامل

Aspect Refinement in Software Product Lines

This article investigates aspects in the context of the step-wise development of software product lines. Specifically, we propose the integration of aspects into AHEAD, an architectural model for feature-based product line development. We introduce the notion of aspect refinement based on Aspectual Mixin Layers, a technique for implementing features. Aspect refinement enables a programmer to ev...

متن کامل

Aspects and Data Refinement

We give an introduction to aspect-oriented programming from the viewpoint of data refinement. Some data refinements are conveniently expressed via aspects. Unlike traditional programming language features for data refinement, aspects conceptually transform run-time events, not compile-time programs.

متن کامل

Refining Feature Driven Development - A methodology for early aspects

This position paper focuses on refining an agile processes approach named FDD to make it more aspect-oriented, hence a natural candidate for early aspects. We show that only a slight refinement is needed to adapt FDD to aspect-oriented development. Within the refinement, all requirements, be they concerns (architectural, non-functional and functional) or properties or rules, are described by us...

متن کامل

Mixin-Based Aspect Inheritance

Introducing mixin-based inheritance to AOP improves the capabilities of aspects to implement incremental designs. Since it enhances the inheritance mechanism with more flexibility, it is a key technology to reuse, compose, and evolve aspects in a step-wise manner over several development stages (step-wise aspect refinement). The introduction of mixin capabilities to aspects leads to the unifica...

متن کامل

Separation of Concerns through Stratified Architectures

Aspect-oriented programming essentially offers a way of enhancing the separation of concerns in software development. However, one of the most fundamental dimensions of concern, refinement, is not addressed in existing aspect-oriented approaches, despite the fact that much of the perceived "tangling" between software components comes from low level component interactions created by refining hig...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2006